package com.wunong.smart.address.domain.operation;

import com.wunong.smart.address.application.context.UserAddressContext;
import com.wunong.smart.address.application.request.BaseUserAddressRequest;

/**
 * 用户地址操作
 *
 * @author create by zealot.zt
 */
public interface UserAddressOperation<REQ extends BaseUserAddressRequest> {

    /**
     * 执行对应操作
     *
     * @param context
     * @return
     */
    Object operate(UserAddressContext<REQ> context);

    /**
     * 获取请求对象的Class对象
     *
     * @return
     */
    Class<REQ> getRequestClass();

}
